Database কনফিগারেশন (SQLite, MySQL, PostgreSQL)

Web Development - জ্যাঙ্গো (Django) - Django এর বেসিক কনফিগারেশন
285

Django ডিফল্টভাবে SQLite ডাটাবেস ব্যবহার করে, যা একটি হালকা ও সহজ ডাটাবেস সমাধান। তবে, Django আপনাকে বিভিন্ন ডাটাবেস ব্যবহারের সুবিধা দেয়, যেমন MySQL এবং PostgreSQL। এখানে আমরা Django প্রজেক্টে SQLite, MySQL, এবং PostgreSQL ডাটাবেস কনফিগারেশন কিভাবে করবেন, তা আলোচনা করব।


SQLite (ডিফল্ট ডাটাবেস)

Django প্রজেক্ট তৈরি করার সময় SQLite ডাটাবেস ডিফল্টভাবে কনফিগার করা থাকে। এটি একটি ফাইল-ভিত্তিক ডাটাবেস, যা সহজে ব্যবহৃত হয় ছোট প্রোজেক্ট এবং ডেভেলপমেন্ট পর্যায়ের জন্য।

১. SQLite ডাটাবেস কনফিগারেশন

Django-তে SQLite কনফিগারেশন ডিফল্টভাবে settings.py ফাইলে থাকে। এটি সাধারণত নিম্নরূপ থাকে:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

এখানে:

  • ENGINE: ডাটাবেসের ইঞ্জিন, যেটি SQLite।
  • NAME: ডাটাবেসের নাম, যেখানে BASE_DIR আপনার প্রোজেক্টের রুট ডিরেক্টরি।

SQLite ডাটাবেসের ক্ষেত্রে কোনো আলাদা সার্ভার বা অতিরিক্ত কনফিগারেশন প্রয়োজন নেই। এটি আপনার প্রোজেক্টের রুট ফোল্ডারে একটি db.sqlite3 ফাইল তৈরি করে।


MySQL ডাটাবেস কনফিগারেশন

MySQL একটি জনপ্রিয় এবং শক্তিশালী রিলেশনাল ডাটাবেস, যা বৃহৎ এবং স্কেলেবল প্রোজেক্টগুলির জন্য ব্যবহৃত হয়। Django প্রজেক্টে MySQL ব্যবহার করতে হলে, আপনাকে কিছু অতিরিক্ত স্টেপ ফলো করতে হবে।

১. MySQL ইনস্টলেশন

প্রথমে MySQL ইনস্টল করতে হবে। আপনার অপারেটিং সিস্টেম অনুযায়ী এটি ইনস্টল করতে পারেন।

  • Ubuntu:

    sudo apt-get install mysql-server
    
  • Windows/Mac: MySQL ডাউনলোড করতে MySQL এর অফিসিয়াল সাইটে যান এবং আপনার অপারেটিং সিস্টেম অনুযায়ী ইনস্টল করুন।

২. MySQL ড্রাইভার ইনস্টল করা

Django-কে MySQL ডাটাবেসের সাথে সংযোগ করতে mysqlclient অথবা PyMySQL ড্রাইভার ব্যবহার করা হয়।

  • mysqlclient ইনস্টল করতে:

    pip install mysqlclient
    
  • PyMySQL ইনস্টল করতে:

    pip install PyMySQL
    

৩. MySQL কনফিগারেশন

settings.py ফাইলে DATABASES সেকশনে MySQL এর কনফিগারেশনটি এইভাবে করা হবে:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'your_database_name',
        'USER': 'your_mysql_user',
        'PASSWORD': 'your_mysql_password',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

এখানে:

  • ENGINE: MySQL ডাটাবেস ইঞ্জিন।
  • NAME: MySQL ডাটাবেসের নাম।
  • USER: MySQL ব্যবহারকারীর নাম।
  • PASSWORD: ব্যবহারকারীর পাসওয়ার্ড।
  • HOST: সার্ভারের হোস্ট (সাধারণত localhost)।
  • PORT: MySQL সার্ভারের পোর্ট (ডিফল্ট: 3306)।

৪. MySQL ডাটাবেস তৈরি করা

MySQL এ একটি ডাটাবেস তৈরি করতে, MySQL শেলের মাধ্যমে নিচের কমান্ডটি চালান:

CREATE DATABASE your_database_name;

PostgreSQL ডাটাবেস কনফিগারেশন

PostgreSQL একটি শক্তিশালী, ওপেন সোর্স রিলেশনাল ডাটাবেস, যা অনেক বড় অ্যাপ্লিকেশন এবং বড় স্কেল প্রোজেক্টের জন্য উপযুক্ত।

১. PostgreSQL ইনস্টলেশন

PostgreSQL ইনস্টল করতে হলে, প্রথমে PostgreSQL ইনস্টল করতে হবে:

  • Ubuntu:

    sudo apt-get install postgresql postgresql-contrib
    
  • Windows/Mac: PostgreSQL ডাউনলোড করতে PostgreSQL এর অফিসিয়াল সাইটে যান এবং আপনার অপারেটিং সিস্টেম অনুযায়ী ইনস্টল করুন।

২. PostgreSQL ড্রাইভার ইনস্টল করা

Django-কে PostgreSQL ডাটাবেসের সাথে সংযোগ করতে psycopg2 ড্রাইভার ব্যবহার করা হয়।

pip install psycopg2

৩. PostgreSQL কনফিগারেশন

PostgreSQL ডাটাবেস কনফিগারেশন settings.py ফাইলে হবে এইভাবে:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'your_database_name',
        'USER': 'your_postgresql_user',
        'PASSWORD': 'your_postgresql_password',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

এখানে:

  • ENGINE: PostgreSQL ডাটাবেস ইঞ্জিন।
  • NAME: PostgreSQL ডাটাবেসের নাম।
  • USER: PostgreSQL ব্যবহারকারীর নাম।
  • PASSWORD: ব্যবহারকারীর পাসওয়ার্ড।
  • HOST: সার্ভারের হোস্ট (সাধারণত localhost)।
  • PORT: PostgreSQL সার্ভারের পোর্ট (ডিফল্ট: 5432)।

৪. PostgreSQL ডাটাবেস তৈরি করা

PostgreSQL এ একটি ডাটাবেস তৈরি করতে, PostgreSQL শেলের মাধ্যমে নিচের কমান্ডটি চালান:

CREATE DATABASE your_database_name;

মাইগ্রেশন এবং ডাটাবেস ব্যবহার শুরু করা

ডাটাবেস কনফিগারেশন সম্পন্ন হওয়ার পর, আপনাকে Django প্রজেক্টে মাইগ্রেশন চালাতে হবে, যাতে ডাটাবেস টেবিল তৈরি হতে পারে।

১. মাইগ্রেশন চালানো

python manage.py migrate

এটি Django এর ডিফল্ট অ্যাপ্লিকেশন এবং আপনার প্রোজেক্টের জন্য প্রাথমিক ডাটাবেস টেবিল তৈরি করবে।


সারাংশ

  • SQLite: ডিফল্ট ডাটাবেস, কোন অতিরিক্ত কনফিগারেশন প্রয়োজন হয় না।
  • MySQL: শক্তিশালী ডাটাবেস, mysqlclient বা PyMySQL ড্রাইভার দিয়ে সংযোগ।
  • PostgreSQL: ওপেন সোর্স, শক্তিশালী ডাটাবেস, psycopg2 ড্রাইভার দিয়ে সংযোগ।

Django প্রজেক্টে SQLite, MySQL, বা PostgreSQL যেকোনো একটি ডাটাবেস ব্যবহার করতে পারেন এবং এর কনফিগারেশন settings.py ফাইলে পরিবর্তন করে এটি কাস্টমাইজ করা হয়।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...